Media Broker Server, Method, Computer Program and Computer Program Product for Matching a Media Source and Media Receiver

ABSTRACT

It is presented a method for matching a media source and a media receiver. The method comprises the steps of: receiving position messages from a plurality of media sources, the position messages comprising geographic position data indicating a geographic position of each respective media source; receiving a request media message from the media receiver, the request media message comprising desired geographic position data indicating a desired geographic position of a media source; creating a matching group comprising all matching media sources of the plurality of media sources, which matching media sources are in a geographic position matching the desired geographic position; forwarding a live media stream, captured by at least one of the matching media sources of the matching group, to the media receiver; and maintaining the matching group. A corresponding media broker server, computer program and computer program product are also presented.

TECHNICAL FIELD

The invention relates to matching a media source and a media receiverand forwarding a live media stream from the media source to the mediareceiver.

BACKGROUND

It has become more and more common that mobile phones have an integratedhigh-quality video camera as well as positioning equipment such as a GPS(global positioning system) receiver. Also, other types video recordingdevices, such as lap top computers or tablet computers, can carryinformation about location while having a connection to a network suchas the Internet.

The U.S. Pat. No. 7,779,444 presents a video on request (“VOR”) system.The VOR system includes a producer having a location device forproviding location data and a video recording device. The VOR systemalso includes an information exchange having a producer databaseconfigured to store a producer profile having current location andstatus of the producer. The current location and status are continuallyupdated based on the location data. The VOR system also includes aviewer having access to the information exchange to search the producerdatabase for available producers within a predetermined range of adesired location. Upon finding the available producer at the desiredlocation, the viewer requests an information segment to be produced bythe producer from the desired location. The producer thereafter recordsthe information segment and transmits the information segment to theviewer.

However, the disclosed patent does not handle a situation when aproducer becomes unavailable or in any other way does not continue toprovide the information segment. The viewer would in that case againhave to access to the information exchange to find a new suitableproducer. This is at best tedious and cumbersome and can in moreproblematic cases cause a viewer to completely lose out on a criticalpart in the desired information segment.

SUMMARY

It is an object of embodiment herein to reduce traffic when requests arenot allowed.

According to a first embodiment, it is presented a media broker serverfor matching a media source and a media receiver. The media brokerserver comprises: a message receiver arranged to receive positionmessages from a plurality of media sources, the position messagescomprising geographic position data indicating a geographic position ofeach respective media source, the message receiver further beingarranged to receive a request media message from the media receiver, therequest media message comprising desired geographic position dataindicating a desired geographic position of a media source; a groupmanager arranged to create a matching group comprising all matchingmedia sources of the plurality of media sources, which matching mediasources are in a geographic position matching the desired geographicposition; and a media stream forwarder arranged to forward a live mediastream, captured by at least one of the matching media sources of thematching group, to the media receiver.

By using matching groups capable of containing more than one mediasource, a more secure source of media is provided. For example, if onemedia source becomes unavailable, another media source in the matchinggroup can take over being the source to the media receiver.Additionally, using the media broker server, anonymity can be providedbetween the media source and the media receiver, in either or bothdirections.

The group manager may be arranged to consider it a match when at leastone capability of the media source in question matches at least onerespective desired capability requested by the media receiver. Byconsidering media source capabilities, the media receiver can select anappropriate media source using other characteristics, if more than oneis available at the desired location.

The at least one capability may include a media quality of therespective media source.

The at least one capability may include a bandwidth of at least part ofa connection between the respective media source and the media brokerserver.

The media stream forwarder may be arranged to forward a live mediastream from the one of the matching media sources of the matching groupwhich best satisfies evaluation criteria from the media receiver.

The group manager may further be arranged to, when a first matchingmedia source becomes unavailable for streaming media, remove the firstmatching media source from the matching group.

The group manager may further be arranged to, when a second matchingmedia source no longer matches the desired geographic position, removethe second matching media source from the matching group.

The group manager may further be arranged to, when a new media sourcematches the desired geographic position, add the new media source to thematching group.

The group manager may further be arranged to query each matching mediasource whether to accept being a media source and only add media sourceswhich have accepted being a media source to the matching group.

This dynamic updating of the matching group allows for an updated listof potential or actual media sources for the media receiver.

The group manager may be arranged to consider it a match when a distancebetween the geographic position of the media source in question and thedesired geographic position is less than a threshold distance.

The media stream forwarder may further be arranged to process the mediastream, comprising transcoding the media stream to a format acceptableto the media receiver.

The request media message may comprise a reference to mobile object tobe tracked, the mobile object having the desired geographic positiondata indicating a desired geographic position of a media source; and thegroup manager may be arranged to update the matching group with removedand added media sources to maintain matching media sources withreference to the mobile object.

A movement predictor may be arranged to predict movement of the mobileobject, and the group manager may be arranged to query a predicted mediasource, predicted to match a future geographic position of the mobileobject, whether to accept being a media source.

A second embodiment is a method for matching a media source and a mediareceiver. The method comprises the steps, performed in a media brokerserver, of: receiving position messages from a plurality of mediasources, the position messages comprising geographic position dataindicating a geographic position of each respective media source;receiving a request media message from the media receiver, the requestmedia message comprising desired geographic position data indicating adesired geographic position of a media source; creating a matching groupcomprising all matching media sources of the plurality of media sources,which matching media sources are in a geographic position matching thedesired geographic position; forwarding a live media stream, captured byat least one of the matching media sources of the matching group, to themedia receiver; and maintaining the matching group.

The step of creating a matching group may involve considering it a matchwhen at least one capability of the media source in question matches atleast one respective desired capability requested by the media receiver.

In the step of creating a matching group, the at least one capabilitymay include a media quality of the respective media source.

In the step of creating a matching group, the at least one capabilitymay include a bandwidth of at least part of a connection between therespective media source and the media broker server.

The step of forwarding may forwards a live media stream from the one ofthe matching media sources of the matching group which best satisfiesevaluation criteria from the media receiver.

The step of maintaining the matching group may further comprise, when afirst matching media source becomes unavailable for streaming media,removing the first matching media source from the matching group.

The step of maintaining the matching group may further comprise, when asecond matching media source no longer matches the desired geographicposition, removing the second matching media source from the matchinggroup.

The step of maintaining the matching group may further comprise, when anew media source matches the desired geographic position, adding the newmedia source to the matching group.

The method may further comprise the step of querying each matching mediasource whether to accept being a media source and only media sourceswhich have accepted being a media source are added to the matchinggroup.

The step of creating a matching group may involve considering it a matchwhen a distance between the geographic position of the media source inquestion and the desired geographic position is less than a thresholddistance.

The step of forwarding may comprise processing the media stream,comprising transcoding the media stream to a format acceptable to themedia receiver.

In the step of receiving a request media message, the request mediamessage may comprise a reference to mobile object to be tracked, themobile object having the desired geographic position data indicating adesired geographic position of a media source; and the matching groupmay be updated with removed and added media sources to maintain matchingmedia sources with reference to the mobile object.

A movement of the mobile object may be predicted, and the step ofquerying a media source whether to accept being a media source, may beperformed for a predicted media source predicted to match a futuregeographic position of the mobile object.

A third embodiment is a computer program for a media broker server formatching a media source and a media receiver. The computer programcomprises computer program code which, when run on the media brokerserver causes the media broker server to: receive position messages froma plurality of media sources, the position messages comprisinggeographic position data indicating a geographic position of eachrespective media source; receive a request media message from the mediareceiver, the request media message comprising desired geographicposition data indicating a desired geographic position of a mediasource; create a matching group comprising all matching media sources ofthe plurality of media sources, which matching media sources are in ageographic position matching the desired geographic position; forward alive media stream, captured by at least one of the matching mediasources of the matching group, to the media receiver; and maintain thematching group.

A fourth embodiment is a computer program product comprising a computerprogram according to the third embodiment and computer readable means onwhich the computer program is stored.

It is to be noted that any feature of the first, second, third, andfourth embodiments may, where appropriate, be applied to any other ofthese embodiments.

Generally, all terms used in the application are to be interpretedaccording to their ordinary meaning in the technical field, unlessexplicitly defined otherwise herein. All references to “a/an/theelement, apparatus, component, means, step, etc.” are to be interpretedopenly as referring to at least one instance of the element, apparatus,component, means, step, etc., unless explicitly stated otherwise. Thesteps of any method disclosed herein do not have to be performed in theexact order disclosed, unless explicitly stated.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention is now described, by way of example, with reference to theaccompanying drawings, in which:

FIG. 1 is a schematic diagram showing an overview of an environmentwhere embodiments of the invention can be applied;

FIGS. 2A and 2B are sequence diagrams illustrating communication inembodiments between the components of FIG. 1 to match a media source anda media receiver;

FIG. 3 is a flow chart illustrating an embodiment of a methodimplemented in the media broker server of FIG. 1;

FIG. 4A-D are schematic diagrams illustrating the selection of one ormore media sources for a media receiver of FIG. 1;

FIG. 5 a is a schematic diagram of components of the media broker serverof FIG. 1;

FIG. 5 b is a schematic diagram showing functional modules of the mediabroker server of FIG. 1; and

FIG. 6 shows one example of a computer program product comprisingcomputer readable means.

DETAILED DESCRIPTION

The invention will now be described more fully hereinafter withreference to the accompanying drawings, in which certain embodiments ofthe invention are shown. This invention may, however, be embodied inmany different forms and should not be construed as limited to theembodiments set forth herein; rather, these embodiments are provided byway of example so that this disclosure will be thorough and complete,and will fully convey the scope of the invention to those skilled in theart. Like numbers refer to like elements throughout the description.

FIG. 1 is a schematic diagram showing an overview of an environmentwhere embodiments of the invention can be applied. A media receiver 1 isconnected to a media broker server 2, e.g. using a wide area networksuch as the Internet. The media broker server 2 is in turn connected toa plurality of media sources 4 a-d, using a wide area network such asthe Internet. While the environment shown in FIG. 1 includes four mediasources 4 a-d, any number of media sources can be used.

The media receiver 1 can be any device capable of receiving streamingmedia, e.g. a personal computer, a mobile (cellular) phone, a tabletcomputer, etc.

The media sources 4 a-d can each be any device capable of capturing andproviding streaming media e.g. using a camera and/or microphone, andthat are capable of providing position data. For example, each mediasource can a mobile (cellular) phone, a tablet computer, a lap topcomputer, etc. The different media sources do not need to be (but couldbe) of the same type. The different media sources can have differentcapabilities in terms of video and/or audio quality.

FIG. 2A is a sequence diagrams illustrating communication in embodimentsbetween the components of FIG. 1 to match a media source and a mediareceiver. All communication can e.g. occur using IP (Internet Protocol).In one embodiment, all signalling is performed over HTTP (HypertextTransport Protocol), and only the media streaming occurs over adifferent protocol such as UDP (User Datagram Protocol), or indeed alsoover HTTP.

The media broker device 2 receives position messages 30, 31, 32 from oneore more media sources. In this example, three position messages 30, 31,32 are received from three respective media sources 4 a, 4 b, 4 c. Eachposition message includes geographic position data indicating thegeographic position of each respective media source. For example, thegeographic position data from each media source can comprise latitudeand longitude co-ordinates obtained e.g. through triangulation or anintegrated GPS (global positioning service). While only three positionmessages are shown here, the media broker server 2 repeatedly receivesposition messages from media sources to be able to maintain a table withpositions of all active media sources. Optionally, the position messagesinclude media capability data of each respective media source. The mediacapability data can include media quality data indicating the qualitythat the respective media source can provide, such as video resolution,bit rate, encoding format, current bandwidth, current radio coverage,rating from previous media receivers and/or any other parameters thataffect the quality of the media. This media quality of the mediacapabilities can apply to audio and/or video media.

The media receiver 1 at some point sends a request media message 33. Therequest media message comprises desired geographic position dataindicating a desired geographic position of a media source, e.g. asource for video and/or audio footage. For example, the user of themedia receiver could be interested in a current event occurring at aparticular location, e.g. for news footage.

Based on the desired geographic position, the media broker server 2creates a matching group comprising all matching media sources. Thematching media sources are thus in a geographic position matching thedesired geographic position, e.g. determined by distance to the exactdesired geographic position. In the example here, all media sources 4a-c shown here are determined to be matching media sources.

The media broker server 2 then proceeds to send an accept source message35 to media source one 4 a. In one embodiment, media source one 4 a canask its user whether to accept being a media source. Alternatively, themedia source is configured to accept or reject queries for being a mediasource. In this example, media source one determines that it is toreject the accept source query and thus sends a negative response 36.Subsequently, the media broker server 2 sends an accept source message38 to media source two 4 b and receives a positive response 39. Themedia broker server 2 then sends an accept source message 40 to mediasource three and receives a positive response 10.

The media broker server 2 now has two media sources (media source two 4b and media source three 4 c) available for the media consuming device1. The media broker 2 then sends a media sources message 43 to the mediaconsuming device comprising the list of two available media sources. Theuser of the media receiver 1 selects media source two 4 b, after whichthe media receiver 1 responds with a select source message 45. Theselect source message in comprises a reference to media source two 4 b.At this point, the media broker server 2 sends a start feed message 46to media source two 4 b. Media source two 4 b then starts a live mediastream 47, being video and/or audio, to the media broker server 2. Themedia broker server 2 can in this way optionally transcode the mediastream 47. The media broker server 2 then forwards a media stream 48 tothe media receiver, where the media stream 48 corresponds to the mediastream 47 received from media source two 4 b.

If media source two 4 b is unable to continue the feed, media source two4 b sends an end feed message 49 to the media broker server 2 which thensends an end stream message 50 to the media receiver 1. The reason formedia source two becoming unable to continue the feed can for example bethat the media source two 4 b is required for other uses, e.g. for phonecalls if the media source two 4 b is a mobile phone. Alternatively, theuser of media source two simply wants to stop sending the media stream.

Since no media stream is now provided to the media receiver 1, the mediabroker server 2 sends a start feed message 51 to media source three,which can then start sending a live media stream 52 to the media brokerserver 2. The media broker server 2 then forwards a corresponding livemedia stream 53 to the media receiver 1. In this way, the media receiver1 is automatically provided a new live media stream 53 to replace theprevious media stream 48. This significantly reduces any time that themedia receiver does not receive any live media stream if a currentlyactive media source stops providing the live media stream.

It is thus shown that by keeping a group of media sources, the mediabroker server is able to provide a better and more reliable service tothe media receiver 1.

Moreover, by using the media broker server 2, the media receiver isgreatly assisted in the filtering of media sources. This filtering can,as shown, comprise consideration of capabilities of media sources.

Additionally, using the media broker server, anonymity can optionally beprovided between the media source and the media receiver, in either orboth directions.

Furthermore, in one embodiment it is possible that the media receivercan select multiple sources and thus get multiple concurrent mediastreams from the multiple media sources, as forwarded by the mediabroker server 2.

FIG. 2B is a sequence diagrams illustrating communication in embodimentsbetween the components of FIG. 1 to match a media source and a mediareceiver in a simplified embodiment. All steps in FIG. 2B correspond tothose in FIG. 2A. In FIG. 2B, however, once a positive response 29 hasbeen received by a media source, media source two 4 b in this example,the media broker server 2 sends the start feed message to the mediasource two 4 b. In other words, the feed starts automatically as soon asthe first matching media source accepts to provide the media.

FIG. 3 is a flow chart illustrating an embodiment of a methodimplemented in the media broker server of FIG. 1. The method correspondsto the communication of the media broker server 2 of FIGS. 2A and 2B.The method can be implemented using a computer program as depicted inFIG. 6.

In a receive position messages step 10, the position messages arereceived from a plurality of media sources, such as media sources 4 a-jof FIG. 4. Each position message comprises geographic position dataindicating a geographic position of each respective media source.Optionally, a media quality of each respective media source can beincluded in the position messages.

The media sources can be maintained in the media broker server in atable according to the illustrative example in table 1 below.

TABLE 1 Media sources Media source Location Resolution Total bit rate xa 640 × 480 500 y b 320 × 240 150 z c 640 × 480 500

Table 1 can be expanded to accommodate more quality parameters.

In a receive request media message step 11, the request media message isreceived from the media receiver 1. The request media message comprisesdesired geographic position data indicating a desired geographicposition of a media source, i.e. an indication of in what region mediasources are of interest. Optionally, the request media message comprisesa threshold distance, such that media sources only within the thresholddistance from the desired geographic location are to be considered amatch. This allows the media receiver 1 to adjust range of interestdepending on the reason for the media stream. Optionally, the requestmedia message comprises a desired capabilities of the media receiver. Inan optional embodiment for tracking a mobile object, the request mediamessage comprises a reference to mobile object to be tracked. The mobileobject thus has the desired geographic position data indicating adesired geographic position of a media source. In other words, thereference is to an object which is updated with geographic positions ofthe mobile object over time. Optionally, the media receiver can arrangefor higher priority media streaming, e.g. by paying for a premiumservice.

In a create a matching group step 13, a matching group is created whichcomprises all matching media sources. The matching media sources are ina geographic position which matches the desired geographic position. Itcan be considered to be a match when a distance between the geographicposition of the media source in question and the desired geographicposition is less than a threshold distance. Optionally, it is considereda match when also a capability of the media source in question matches adesired capability of the media receiver. In other words, the geographicposition is always a factor in determining whether a media source is amatch or not while the capability of the media source is an optionalaspect. Capability can for example be media quality such as resolution,bit rate, encoding format, or a connection measurement such as currentbandwidth, current radio coverage, or even a subjective capability suchas a rating from previous media receivers and/or any other parametersthat reflect the capability of the media source. Filtering the matchinggroup using the capabilities can for instance be performed beforefinding media sources matching the desired geographic location, or afterhaving received responses from the media sources as part of thequerying. Alternatively or additionally, this filtering can even beperformed while the live media stream is being received.

In an optional query media source step 14, each media source of thematching group is queried whether to accept being a media source. Thematching group can thus be filtered to only include media sources whichhave accepted being a media source.

Optionally, once the matching group has been created, the media brokerserver, in a send available media sources message step 16, sends themedia sources message to the media receiver. The media sources messagecomprises a list the available media sources of the matching group. Thematching group can be maintained in the media broker server in a tableaccording to the illustrative example in table 2 below.

TABLE 2 Matching groups Group ID Media receiver Media source 1 i a 1 i c2 ii a 2 ii b 2 ii c

As seen in table 2, several groups can exist concurrently for differentmedia receivers. Also, each media source can stream live media to morethan one media receiver.

If a more automatic method is performed, the media stream simply isstarted once a matching media source has been found. This allows for amore automatic system, at the expense of less choice of media source forthe media receiver. Alternatively, the group can comprise more than oneentry, and media stream is started from the matching media source whichbest satisfies evaluation criteria from the media receiver. Theevaluation criteria can for example be communicated in the request mediamessage, or the criteria can be pre-configured in the media brokerserver 2 for the particular media receiver or globally. For example, themedia source can be selected which is closest to the desired geographicposition, or has the highest video resolution.

If the optional send available media sources message step 16 wasexecuted, a receive selection message step 17 is also executed. Here,the selection of media source or media sources is received from themedia receiver in the selection message.

At this point, in a forward live media stream step 27, the live mediastream from one or more media sources, matching the selection message,is forwarded to the media receiver.

The forward live media stream step 27 can comprise a send start feedmessage step 18, a receive media stream step 19 a process media streamstep 20 and a send media stream step 21. These steps are executedrepeatedly or even concurrently during the duration of live mediastreaming. Optionally, if the media receiver is configured to receivehigher priority media streaming, the media broker server 2 can here senda request to a mobile network operator of the one or more selected mediasources. In this way, the mobile network operator can increase thepriority of live media streaming from the one or more selected mediasources to improve quality of the live media stream(s) received by themedia receiver.

In the send start feed message step 18, a start feed message is sent tothe one or more selected media sources. The media stream is thenreceived from the selected media source/sources in the receive mediastream step 19.

In the optional process media stream step 20, the media stream can forexample be transcoded to a format which is acceptable to the mediareceiver. Optionally, the live media stream can be recorded in this stepto allow access to the live media stream at a later stage.

Subsequently, the media stream is sent to the media receiver in the sendmedia stream step 21.

In a maintain matching group step 22, the matching group is maintained.For example, when a matching media source which is part of the matchinggroup becomes unavailable for streaming media, such a media source isremoved from the matching group. Also, when a matching media source nolonger matches the desired geographic position or desired capability,this can be removed from the second matching media source from thematching group. Furthermore, when a new media source matches the desiredgeographic position and optionally desired capability, this media sourcecan be added to the matching group.

In the optional embodiment for tracking a mobile object, the matchinggroup is updated over time, removing and adding media sources tomaintain media sources which match the mobile object. In that situation,the movement of the mobile object can sometimes be predicted, wherebypredicted media sources can be queried in advance whether to acceptbeing a media source, where predicted media source are predicted tomatch a future geographic position of the mobile object. This allowspredicted media sources to be available quicker once the mobile objectis in a position such that the predicted media source in questionmatches the location of the mobile object.

FIG. 4A-D are schematic diagrams illustrating the selection of one ormore media sources for a media receiver of FIG. 1. This is to illustratehow the matching group is maintained in relation to a desired geographiclocation.

In FIG. 4A, media sources 4 a-j are scattered geographically. A mediareceiver 1 (not shown here) would like to receive a live media streamfrom the desired geographic location 6, as described above. A thresholddistance 8 defines a radius of a circle around the desired geographiclocation 6, within which all media sources 4 c, 4 d, 4 f being part ofthe matching group 7 are included. In this example, media sources 4 eand 4 h are not part of the matching group even though theygeographically match the desired geographic location 6, as definedtogether with the threshold distance 8. The reason for this can forexample be that media source 4 e did not accept a query to be a mediasource and that the capability defined as a quality of a live mediastream from media source 4 h does not match a desired capabilityincluding the quality as requested by the media receiver. Hence, themedia sources 4 c, 4 d and 4 f form the matching group 7.

FIG. 4B shows a scenario of the situation illustrated in FIG. 4A, sometime later. The dynamic behaviour of the matching group 7 is illustratedby media source 4 f no longer being part of the matching group 7. Thiscan for example be due to the media source 4 f being turned off or thatthe user of the media source 4 f no longer would like to provide thelive media stream.

FIGS. 4C and 4D illustrate an embodiment where a mobile object 9 is tobe tracked. The mobile object 9 thus defines and is coupled to thedesired geographic position 6 and thereby defines the geographic scopeof the matching group 7. In FIG. 4C, the matching group contains mediasources 4 c, 4 d and 4 f. In FIG. 4D, the mobile object 9 has moved,thereby the geographic scope of the matching group 7 has moved and nowonly includes media sources 4 f and 4 h.

Optionally, the media broker server 2 predicts the movement of themobile object 9, and can thereby already at the time reflected in FIG.4C prepare media source 4 h by querying whether media source 4 h willaccept to be a media source.

FIG. 5A is a schematic diagram of components of the media broker server2 of FIG. 1. A controller 90 is provided using any suitable centralprocessing unit (CPU), microcontroller, digital signal processor (DSP),etc., capable of executing software instructions stored in a computerreadable media 94, e.g., memory. The computer readable media 94 can beany combination of read and write memory (RAM) and read only memory(ROM). The computer readable media 94 also comprises persistent storage,which, for example, can be any single one or combination of magneticmemory, optical memory, or solid state memory.

An input/output interface 92 is provided to allow the media brokerserver 2 to communicate with other entities such as the media receiver 1and media sources 4 a-f.

A local operator interface (not shown) is optionally provided to allowan operator to interact with the media broker server 2. The operatorinterface can include a display and an input device such as a keyboard,a touch function of the display and/or a positional input device such asa mouse, trackball, etc.

The media broker server 2 can be integrated in one unit, or it can beseparated into several separate units, e.g. for reasons ofupgradeability, media receiver proximity, ease of implementation orredundancy.

FIG. 5B is a schematic diagram showing functional modules of the mediabroker server 2 of FIG. 1. The modules can be implemented using softwaresuch as a computer program executing in the media broker server 2. Allmodules depend on an execution environment which can utilise thecontroller 47, computer program product 48 and/or I/O interface 49 ofFIG. 4 a. The modules implement communication of the streaming mediabroker 2 of FIG. 2 and correspond to the method steps of FIG. 3.

A message receiver 80 is arranged to receive the position messages fromthe media sources. The message receiver is also arranged to receive therequest media message from the media receiver 1, the request mediamessage comprising desired geographic position data indicating a desiredgeographic position of a media source.

A group manager 82 is arranged to create a matching group 7 comprisingall matching media sources. The group manager 82 is arranged todynamically maintain the matching group by removing media sources asthey become unavailable, no longer match or no longer provide a mediastream. Furthermore, the group manager 82 adds any new matching mediasources to the matching group 7. Optionally, the group manager 82queries each matching media source whether to accept being a mediasource and only adds media sources which have accepted being a mediasource to the matching group 7. Optionally, the group manager 82 can bearranged to update the matching group 7 with removed and added mediasources to maintain matching media sources with reference to a mobileobject. The group manager 82 can also be arranged to in advance query apredicted media source, predicted to match a future geographic positionof the mobile object, whether to accept being a media source.

A media stream forwarder 84 is arranged to forward a live media streamcaptured by a media source of the matching group 7 to the media receiver1. The media stream forwarder can be arranged to transcode the mediastream from the media source to a format which is suitable for the mediareceiver.

An optional movement predictor 87 can be arranged to predict movement ofthe mobile object, and the group manager 82 is in that case arranged toquery a predicted media source, predicted to match a future geographicposition of the mobile object, whether to accept being a media source.

FIG. 6 shows one example of a computer program product 70 comprisingcomputer readable means. On this computer readable means a computerprogram 71 can be stored, which computer program 71 can cause acontroller to execute a method according to embodiments describedherein. In this example, the computer program product is an opticaldisc, such as a CD (compact disc) or a DVD (digital versatile disc) or aBlu-Ray disc. As explained above, the computer program product couldalso be embodied as a memory of a device, such as memory 48 of the mediabroker server 2. While the computer program 71 is here schematicallyshown as a track on the depicted optical disk, the computer program canbe stored in any way which is suitable for the computer program product.

In an optional embodiment, bandwidth can be requested in advance frommobile network operators to increase availability of live media streamsfor embodiments described herein. For example, if it is known that asports event will occur at a particular location at a particular time,then requests for increased bandwidth can be sent to the mobile networkoperators covering the location in advance. Another example can if it isknown that a big celebrity is landing at an airport at a particulartime, bandwidth can be requested for that location in advance.

Using embodiments herein, media receivers are provided with a way toaccess a group of live video resources based on location in an anonymousmanner. The system that is described enables media sources tocollaboratively form a web of live media sources that becomes a singlemedia entity for media receivers. The system is as such not aboutcommunication between two end points, but rather about communicationwith specific locations.

Moreover, embodiments herein allow for flexible modifications of thematching groups based on certain parameters, such as media sourcecapabilities, expected video quality, connection status, and networkcapacity for the location. This lets media receivers customise thead-hoc live video broadcasts for their individual needs, and havedifferent group configurations for the same or overlapping locations.Using the media broker server, one single resource can form part ofseveral concurrent matching groups and thereby be shared between mediareceivers.

The invention has mainly been described above with reference to a fewembodiments. However, as is readily appreciated by a person skilled inthe art, other embodiments than the ones disclosed above are equallypossible within the scope of the invention, as defined by the appendedpatent claims.

1-26. (canceled)
 27. A media broker server device for matching a mediasource device and a media receiver device, the media broker serverdevice comprising: a message receiver arranged to receive positionmessages from a plurality of media source devices, the position messagescomprising geographic position data indicating a geographic position ofeach respective media source device, the message receiver further beingarranged to receive a request media message from the media receiverdevice, the request media message comprising desired geographic positiondata indicating a desired geographic position of a media source deviceand a reference to a mobile object to be tracked, the mobile objecthaving the desired geographic position data indicating a desiredgeographic position of a media source device; a group manager apparatusarranged to create a matching group comprising all matching media sourcedevices of the plurality of media source devices, which matching mediasource devices are in a geographic position matching the desiredgeographic position, and to update the matching group with removed andadded media source devices to maintain matching media source deviceswith reference to the mobile object; and a media stream forwarderapparatus arranged to forward a live media stream, captured by at leastone of the matching media source devices of the matching group, to themedia receiver device.
 28. The media broker server device of claim 27,wherein the group manager apparatus is arranged to consider it a matchwhen at least one capability of the media source device in questionmatches at least one respective desired capability requested by themedia receiver device
 29. The media broker server device of claim 28,wherein the at least one capability includes a media quality of therespective media source device.
 30. The media broker server device ofclaim 28, wherein the at least one capability includes a bandwidth of atleast part of a connection between the respective media source deviceand the media broker server device.
 31. The media broker server deviceof claim 27, wherein the media stream forwarder apparatus is arranged toforward a live media stream from the one of the matching media sourcedevices of the matching group which best satisfies evaluation criteriafrom the media receiver device.
 32. The media broker server device ofclaim 27, wherein the group manager apparatus is further arranged to,when a first matching media source device becomes unavailable forstreaming media, remove the first matching media source device from thematching group.
 33. The media broker server device of claim 27, whereinthe group manager apparatus is further arranged to, when a secondmatching media source device no longer matches the desired geographicposition, remove the second matching media source device from thematching group.
 34. The media broker server device of claim 27, whereinthe group manager apparatus is further arranged to, when a new mediasource device matches the desired geographic position, add the new mediasource device to the matching group.
 35. The media broker server deviceof claim 27, wherein the group manager apparatus is further arranged toquery each matching media source device whether to accept being a mediasource device and only add media source devices which have acceptedbeing a media source device to the matching group.
 36. The media brokerserver device of claim 27, wherein the group manager apparatus isarranged to consider it a match when a distance between the geographicposition of the media source device in question and the desiredgeographic position is less than a threshold distance.
 37. The mediabroker server device of claim 27, wherein the media stream forwarderapparatus is further arranged to process the media stream, comprisingtranscoding the media stream to a format acceptable to the mediareceiver device.
 38. The media broker server device of claim 27, whereina movement predictor is arranged to predict movement of the mobileobject, and the group manager apparatus is arranged to query a predictedmedia source device that is predicted to match a future geographicposition of the mobile object, whether to accept being a media sourcedevice.
 39. A method for matching a media source device and a mediareceiver device, the method comprising the steps, performed in a mediabroker server device, of: receiving position messages from a pluralityof media source devices, the position messages comprising geographicposition data indicating a geographic position of each respective mediasource device; receiving a request media message from the media receiverdevice, the request media message comprising desired geographic positiondata indicating a desired geographic position of a media source deviceand a reference to a mobile object to be tracked, the mobile objecthaving the desired geographic position data indicating a desiredgeographic position of a media source device; creating a matching groupcomprising all matching media source devices of the plurality of mediasource devices, which matching media source devices are in a geographicposition matching the desired geographic position; forwarding a livemedia stream, captured by at least one of the matching media sourcedevices of the matching group, to the media receiver device; andmaintaining the matching group wherein the matching group is updatedwith removed and added media source devices to maintain matching mediasource devices with reference to the mobile object.
 40. The method ofclaim 39, wherein the step of creating a matching group involvesconsidering it a match when at least one capability of the media sourcedevice in question matches at least one respective desired capabilityrequested by the media receiver device.
 41. The method of claim 40,wherein in the step of creating a matching group, the at least onecapability includes a media quality of the respective media sourcedevice.
 42. The method of claim 40, wherein in the step of creating amatching group, the at least one capability includes a bandwidth of atleast part of a connection between the respective media source deviceand the media broker server device.
 43. The method of claim 39, whereinthe step of forwarding forwards a live media stream from the one of thematching media source devices of the matching group which best satisfiesevaluation criteria from the media receiver device.
 44. The method ofclaim 39, wherein the step of maintaining the matching group furthercomprises, when a first matching media source device becomes unavailablefor streaming media, removing the first matching media source devicefrom the matching group.
 45. The method of claim 39, wherein the step ofmaintaining the matching group further comprises, when a second matchingmedia source device no longer matches the desired geographic position,removing the second matching media source device from the matchinggroup.
 46. The method of claim 39, wherein the step of maintaining thematching group further comprises, when a new media source device matchesthe desired geographic position, adding the new media source device tothe matching group.
 47. The method of claim 39, further comprising thestep of querying each matching media source device whether to acceptbeing a media source device and only media source devices which haveaccepted being a media source device are added to the matching group.48. The method of claim 39, wherein the step of creating a matchinggroup involves considering it a match when a distance between thegeographic position of the media source device in question and thedesired geographic position is less than a threshold distance.
 49. Themethod of claim 39, wherein the step of forwarding comprises processingthe media stream, comprising transcoding the media stream to a formatacceptable to the media receiver device.
 50. The method of claim 39,wherein a movement of the mobile object is predicted, and the step ofquerying a media source device whether to accept being a media sourcedevice, is performed for a predicted media source device predicted tomatch a future geographic position of the mobile object.
 51. Anon-transitory computer-readable medium having stored thereupon acomputer program for a media broker server device for matching a mediasource device and a media receiver device, the computer programcomprising computer program code which, when run on the media brokerserver device causes the media broker server device to: receive positionmessages from a plurality of media source devices, the position messagescomprising geographic position data indicating a geographic position ofeach respective media source device; receive a request media messagefrom the media receiver device, the request media message comprisingdesired geographic position data indicating a desired geographicposition of a media source device and a reference to a mobile object tobe tracked, the mobile object having the desired geographic positiondata indicating a desired geographic position of a media source device;\create a matching group comprising all matching media source devices ofthe plurality of media source devices, which matching media sourcedevices are in a geographic position matching the desired geographicposition; forward a live media stream, captured by at least one of thematching media source devices of the matching group, to the mediareceiver device; and maintain the matching group wherein the matchinggroup is updated with removed and added media source devices to maintainmatching media source devices with reference to the mobile object.